package com.wayhome.srpingbootmybatis.mbs.expertimport.dto;

import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;

@Data
@ExcelIgnoreUnannotated
@ApiModel(value = "特例单议审核列表导出数据")
public class SetlTldyExportDTO2 {

    @ApiModelProperty(value = "特例单议id")
    private String tldyId;

    @ExcelProperty(value = "审核状态", index = 0)
    @ApiModelProperty(value = "审核状态：根据节点去判断初审还是复审")
    private String auditStatus;

    @ApiModelProperty("申报节点 -1:退回 0：待申报 1：初审 2: 复审 3: 结束")
    private String status;

    @ExcelProperty(value = "申报节点", index = 1)
    @ApiModelProperty("申报节点名称")
    private String statusName;

    @ApiModelProperty("医保区划")
    private String clrOptins;

    @ExcelProperty(value = "医保区划", index = 2)
    @ApiModelProperty("医保区划名称")
    private String clrOptinsName;

    @ApiModelProperty("定点机构编码")
    private String fixmedinsCode;

    @ExcelProperty(value = "医疗机构", index = 3)
    @ApiModelProperty("定点机构名称")
    private String fixmedinsName;

    @ApiModelProperty(value = "初审状态 0：待审核 1：审核通过 2审核不通过")
    private String checkStatus;

    @ApiModelProperty(value = "复审状态 0：待审核 1：审核通过 2审核不通过")
    private String recheckStatus;

    @ApiModelProperty(value = "特病单议申请原因 字典值")
    private String applyExitRea;


    @ApiModelProperty(value = "平均医疗费倍数")
    private String costOverstep;

    @ApiModelProperty(value = "平均住院天数倍数")
    private String daysOverstep;

    @ExcelProperty(value = "结算时间", index = 4)
    @ApiModelProperty("结算时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date setlTime;

    @ExcelProperty(value = "姓名", index = 5)
    @ApiModelProperty("人员姓名")
    private String psnName;

    @ExcelProperty(value = "证件号", index = 6)
    @ApiModelProperty("证件号码")
    private String certno;

    @ExcelProperty(value = "入院时间", index = 7)
    @ApiModelProperty("开始日期")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date begndate;

    @ExcelProperty(value = "出院时间", index = 8)
    @ApiModelProperty("结束日期")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date enddate;

    @ApiModelProperty("住院主诊断代码")
    private String dscgMaindiagCode;

    @ExcelProperty(value = "主要诊断", index = 9)
    @ApiModelProperty("住院主诊断名称")
    private String dscgMaindiagName;

    @ExcelProperty(value = "医疗费用", index = 10)
    @ApiModelProperty("医疗费总额")
    private BigDecimal medfeeSumamt;

    @ExcelProperty(value = "床位使用天数", index = 11)
    @ApiModelProperty("普通住院天数")
    private int commonHospitalDay;

    @ExcelProperty(value = "监护病房使用天数", index = 12)
    @ApiModelProperty("监护住院天数")
    private int custodyHospitalDay;

    @ApiModelProperty("学科")
    private String deptMajor;

    @ExcelProperty(value = "所属专业学科", index = 13)
    @ApiModelProperty("学科名称")
    private String deptMajorName;

    @ExcelProperty(value = "申报条件", index = 14)
    @ApiModelProperty(value = "特病单议申请原因 字典值")
    private String applyExitReaName;

    @ExcelProperty(value = "补充说明", index = 15)
    @ApiModelProperty("说明")
    private String explainInfo;

    @ExcelProperty(value = "初审申报时间", index = 16)
    @ApiModelProperty("初审申报时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date checkTime;



    @ExcelProperty(value = "复审申报时间", index = 17)
    @ApiModelProperty(value = "复审申报时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date recheckTime;

    @ApiModelProperty(value = "审核信息")
    private String exportAuditInfo;

    @ExcelProperty(value = "初审医师", index = 18)
    @ApiModelProperty(value = "初审医师A名称")
    private String expertAName;

    @ExcelProperty(value = "医疗机构", index = 19)
    @ApiModelProperty(value = "初审医师A医疗机构")
    private String expertAFixmedinsName;

    @ExcelProperty(value = "医师审核结果", index = 20)
    @ApiModelProperty(value = "初审医师A审核结果")
    private String expertACheckStatus;

    @ExcelProperty(value = "审核意见", index = 21)
    @ApiModelProperty(value = "初审医师A审核意见")
    private String expertACheckRea;

    @ExcelProperty(value = "初审医师", index = 22)
    @ApiModelProperty(value = "初审医师B名称")
    private String expertBName;

    @ExcelProperty(value = "医疗机构", index = 23)
    @ApiModelProperty(value = "初审医师B医疗机构")
    private String expertBFixmedinsName;

    @ExcelProperty(value = "医师审核结果", index = 24)
    @ApiModelProperty(value = "初审医师B审核结果")
    private String expertBCheckStatus;

    @ExcelProperty(value = "审核意见", index = 25)
    @ApiModelProperty(value = "初审医师B审核意见")
    private String expertBCheckRea;

    @ExcelProperty(value = "初审医师", index = 26)
    @ApiModelProperty(value = "初审医师C名称")
    private String expertCName;

    @ExcelProperty(value = "医疗机构", index = 27)
    @ApiModelProperty(value = "初审医师C医疗机构")
    private String expertCFixmedinsName;

    @ExcelProperty(value = "医师审核结果", index = 28)
    @ApiModelProperty(value = "初审医师C审核结果")
    private String expertCCheckStatus;

    @ExcelProperty(value = "初审医师C审核意见", index = 29)
    @ApiModelProperty(value = "初审医师C审核意见")
    private String expertCCheckRea;

    @ExcelProperty(value = "初审完成时间", index = 30)
    @ApiModelProperty(value = "初审完成时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date checkOverTime;

    @ExcelProperty(value = "复审医师", index = 31)
    @ApiModelProperty(value = "复审医师A名称")
    private String recheckExpertAName;

    @ExcelProperty(value = "医疗机构", index = 32)
    @ApiModelProperty(value = "复审医师A医疗机构")
    private String recheckExpertAFixmedinsName;

    @ExcelProperty(value = "复审结果", index = 33)
    @ApiModelProperty(value = "复审医师A审核结果")
    private String expertARecheckStatus;

    @ExcelProperty(value = "复审意见", index = 34)
    @ApiModelProperty(value = "复审医师A审核意见")
    private String expertARecheckRea;

    @ExcelProperty(value = "复审医师", index = 35)
    @ApiModelProperty(value = "复审医师B名称")
    private String recheckExpertBName;

    @ExcelProperty(value = "医疗机构", index = 36)
    @ApiModelProperty(value = "复审医师B医疗机构")
    private String recheckExpertBFixmedinsName;

    @ExcelProperty(value = "复审结果", index = 37)
    @ApiModelProperty(value = "复审医师B审核结果")
    private String expertBRecheckStatus;

    @ExcelProperty(value = "复审意见", index = 38)
    @ApiModelProperty(value = "复审医师B审核意见")
    private String expertBRecheckRea;

    @ExcelProperty(value = "复审完成时间", index = 39)
    @ApiModelProperty(value = "复审完成时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date recheckOverTime;
}
